jcc: Integrating Timed Default Concurrent Constraint Programming into Java
نویسندگان
چکیده
This paper describes jcc, an integration of the timed default concurrent constraint programming framework [16] (Timed Default cc) into JAVA [7]. jcc is intended for use in education and research, for the programming of embedded reactive systems, for parallel/distributed simulation and modelling (particularly for space, robotics and systems biology applications), and to support the development of constraint-based program analysis and type-checking tools. In fully implementing the Timed Default cc framework, jcc supports the notion of (typed) logical variables (called “promises”, after [5]), allows the programmer to add his/her own constraint system (an implementation of the Herbrand constraint system is provided), implements (instantaneous) defaults via backtracking, implements a complete renewal of the constraint-store at each time instant, and implements bounded-time execution of the Timed cc control constructs. jcc implements the notion of reactive vats [5] as single threads of execution within the JVM; a vat may be thought of as encapsulating a single synchronous, reactive Timed cc computation. A computation typically consists of a dynamically changing collection of interacting vats (some of which could potentially be located at different JVMs), with dynamically changing connectivity. jcc programs fully inter-operate with JAVA programs, and compile into standard JVM byte-code. jcc programs fully respect the JAVA type system; logical variables are typed. jcc is compatible with the Generic Java [3] extensions, thereby allowing the use of parameterized types. Indeed, jcc may be viewed as an extension of JAVA which replaces JAVA’s notoriously difficult imperative thread-based concurrency with the notion of reactive vats interacting via constraints on logical variables. jcc source code is available under the Lesser GNU licence through SourceForge.
منابع مشابه
Timed Default Concurrent Constraint Programming
Synchronous programming (Berry (1989)) is a powerful approach to programming reactive systems. Following the idea that “processes are relations extended over time” (Abramsky (1993)), we propose a simple but powerful model for timed, determinate computation, extending the closure-operator model for untimed concurrent constraint programming (CCP). In (Saraswat et al. 1994a) we had proposed a mode...
متن کاملTwo Semantics for Timed Default Concurrent Constraint Programming 1
In this paper we present a general approach to give semantics of synchronous languages. By applying this approach, we deene two semantics for Timed Default Concurrent Constraint Programming.
متن کاملTwo semantics for Timed Default Concurrent Constraint Programming
In this paper we present a general approach to give semantics of synchronous languages. By applying this approach, we deene two semantics for Timed Default Concurrent Constraint Programming.
متن کامل